package com.zelix;

import java.util.*;

public class o0 {

    private ArrayList a;
    private HashMap b;
    private wu c;
    private wu d;
    private StringBuffer e;
    private static String z;

    public o0() {
        a = new ArrayList(10);
        b = new HashMap();
        e = new StringBuffer();
    }

    public void a(String s) {
        if (s.length() > 0)
            a.add(new wu(s));
    }

    public void b(String s) {
        wu wu1;
        label0:
        {
            wu1 = new wu(s);
            if (c == null) {
                c = wu1;
                if (p0.b == 0)
                    break label0;
            }
            d = wu1;
        }
        a.add(wu1);
    }

    public void c(String s)
            throws fc {
        if (d == null) {
            throw new fc(z);
        } else {
            wu wu1 = new wu(s);
            b.put(d, wu1);
            a.add(wu1);
            return;
        }
    }

    public String a() {
        if (c != null)
            return ((String) c.a()).trim();
        else
            return null;
    }

    public Enumeration b() {
        return Collections.enumeration(b.keySet());
    }

    public wu a(wu wu1) {
        return (wu) b.get(wu1);
    }

    public void c() {
        a.clear();
        b.clear();
        c = null;
        d = null;
        e.setLength(0);
    }

    public String toString() {
        int i;
        int j;
        i = a.size();
        for (j = 0; j < i; j++) {
            wu wu1 = (wu) a.get(j);
            e.append((String) wu1.a());
        }
        String s = e.toString();
        e.setLength(0);
        return s;
    }

    private static String z(char[] chs) {
        for (int i = 0; i < chs.length; i++) {
            byte key = 0;
            switch (i % 5) {
                case 0:
                    key = 0x67;
                    break;
                case 1:
                    key = 53;
                    break;
                case 2:
                    key = 57;
                    break;
                case 3:
                    key = 59;
                    break;
                default:
                    key = 121;
                    break;
            }
            chs[i] ^= key;
        }
        return new String(chs).intern();
    }

    static {
        z = z("\"Y\\V\034\tA\031T\013GTMO\013\016WLO\034G]XHY\tZ\031U\030\nP".toCharArray());

    }
}